/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Helpers;

import Hibernate.HibernateUtil;
import Entities.AntwoordEnquetevragen;
import java.util.List;
import org.hibernate.*;

/**
 *
 * @author Erhan
 */
public class AntwoordEnquetevragenHelper {

    Session session = null;

    /**
     *
     */
    public AntwoordEnquetevragenHelper() {
        this.session = HibernateUtil.getSessionFactory().getCurrentSession();
    }

    //Ophalen alles
    /**
     *
     * @return
     */
    public List<AntwoordEnquetevragen> getantwoordenquetevragen() {
        List<AntwoordEnquetevragen> antwoordenquetevragenList = null;
        try {
            org.hibernate.Transaction tx = session.beginTransaction();
            Query q = session.createQuery("from AntwoordEnquetevragen");
            antwoordenquetevragenList = (List<AntwoordEnquetevragen>) q.list();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return antwoordenquetevragenList;
    }

    //Ophalen van 1
    /**
     *
     * @param id
     * @return
     */
    public AntwoordEnquetevragen getAntwoordenquetevraag(int id) {
        AntwoordEnquetevragen result = null;
        try {
            org.hibernate.Transaction tx = session.beginTransaction();
            Query q = session.createQuery("from AntwoordEnquetevragen where id=" + id);
            result = (AntwoordEnquetevragen) q.list().get(0);
        } catch (Exception e) {
            e.printStackTrace();
        }

        return result;
    }

    /**
     *
     * @param vid
     * @return
     */
    public List<AntwoordEnquetevragen> getAntwoordpervraag(int vid) {
        List<AntwoordEnquetevragen> antwoordenquetevragenList = null;
        List<AntwoordEnquetevragen> aevragenList =null;
        try {
            org.hibernate.Transaction tx = session.beginTransaction();
            Query q = session.createQuery("from AntwoordEnquetevragen");
            antwoordenquetevragenList = (List<AntwoordEnquetevragen>) q.list();
            int i =0;
            while(i<antwoordenquetevragenList.size()){
                if(antwoordenquetevragenList.get(i).getEnquetteVragen().getId() == vid){
                    aevragenList.add(antwoordenquetevragenList.get(i));
                }

            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return aevragenList;
    }


    // Wegschrijven
    /**
     *
     * @param antwoordenquetevraag
     */
    public void persistAntwoordenquetevraag(AntwoordEnquetevragen antwoordenquetevraag) {
        org.hibernate.Transaction tx = session.beginTransaction();
        tx.begin();
        session.persist(antwoordenquetevraag);
    }

    /**
     *
     */
    public void commitTx(){
        session.beginTransaction().commit();
    }

    // Verwijderen
    /**
     *
     * @param antwoordenquetevraag
     */
    public void deleteAntwoordenquetevraag(AntwoordEnquetevragen antwoordenquetevraag) {
        org.hibernate.Transaction tx = session.beginTransaction();
        tx.begin();
        session.delete(antwoordenquetevraag);
        tx.commit();
    }

    // Updaten
    /**
     *
     * @param antwoordenquetevraag
     */
    public void updateAntwoordenquetevraag(AntwoordEnquetevragen antwoordenquetevraag) {
        org.hibernate.Transaction tx = session.beginTransaction();
        tx.begin();
        session.update(antwoordenquetevraag);
        tx.commit();
    }
}